題目:
processor array有8個 processor
每個的運算能力:10 million ops / sec = 10*10^6 ops / sec = 10^7 ops / sec
根據題意每一個 operation可以處理一組 integer 相加
所以
如果integer vector的size在1 ~ 8以內就剛好只要一輪就可以做完!
所花費的時間是 1 / 10^7 秒 , 所需要做的operation數量則分別是 1個 ~ 8個
其效能 performance 定義是: 需要做的operation數量/所需時間,分別就是
1/1*10^7 ops / sec
2/1*10^7 ops / sec
3/1*10^7 ops / sec
4/1*10^7 ops / sec
5/1*10^7 ops / sec
6/1*10^7 ops / sec
7/1*10^7 ops / sec
8/1*10^7 ops / sec
如果integer vector的size在 9 ~ 16之間給8個處理器同時做則需要兩輪才做得完
所花費的時間都是 2 / 10^7 秒,所需要做的operation數量則分別是 9個 ~ 16個
performance 計算以vector size = 9為例: 9 / (2/10^7) = 9/2 * 10^7 ops / sec
分別列出即為:
9/2*10^7 ops / sec
10/2*10^7 ops / sec
11/2*10^7 ops / sec
12/2*10^7 ops / sec
13/2*10^7 ops / sec
14/2*10^7 ops / sec
15/2*10^7 ops / sec
16/2*10^7 ops / sec
依此類推,17 ~ 24一組 25 ~ 32一組 33 ~ 40 一組,41~48 一組,最後一組 49~50